body {
    min-height:100vh; margin:0px; font-size:1em;
    font-family: 'Roboto', sans-serif; font-weight:400; color:#171717; text-align:left;
} 

*, 
*::before, 
*::after { 
    box-sizing:border-box; 
} 
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary, video, audio { 
    box-sizing:border-box; display: block;
}

/*Стандартная версия шаблона*/
body { 
	display: grid;
	grid-template-rows: 3.7em auto 1fr auto; 
    grid-template-areas: "header" "nav" "main" "footer";
    grid-template-columns: 1fr;
	grid-gap: 0em;
}

header { position:fixed; width: 100%; background:white; border-bottom: 1px solid #e5e5e5; z-index: 999;}
nav { grid-area: nav; position:relative; background:#f7f7f7;}
main { grid-area: main; position:relative; background:#f7f7f7;}
footer { grid-area: footer; position:relative; background:#eaeaea;}


.minmax {
    max-width: 1280px; margin: 0 auto;
}
.header-settings {
	padding: 0px 12px 0px 12px; min-height: 3.7em; position: relative;
}
.padding-footer {
	padding: 30px 25px 30px 25px;
}

.logo {
    top: 55%; left: 50%; width: 92px; position: absolute; z-index: 1;
    transform: translate(-50%, -50%);
}

/*Мобильная версия шаблона*/
@media (max-width: 768px) {
    body {
        grid-template-rows: 3.7em auto 1fr auto;
        grid-template-areas: "header" "nav" "main" "footer";
    }

    header { grid-area: header; }
    nav { grid-area: nav; } 
    main { grid-area: main; } 
    footer { grid-area: footer;}
}




/*Header Container*/
ul.navbar {
	margin:0; padding:0; display:flex; justify-content:space-evenly;
}
.navbar li {
    list-style-type:none;
}
.navbar li a {
	display:inline-block; line-height:0; padding:24px 10px 24px 10px;
    font-size:17px; color:#171717; text-decoration:none;
}
.navbar li a:hover {
	color:#333333;
}
.navbar li.active a {
    color:#1a73e8;
}
/* Active Mobile Display */
@media (max-width: 768px) {
    ul.navbar {
        display:none;
    }
}




/*Footer Container*/
ul.footbar {
	margin:0; padding:0; display:flex; flex-wrap: wrap; margin-bottom: 10px;
}
.footbar li {
    list-style-type:none; margin-right: 15px;
}
.footbar li a {
	display:inline-block; line-height:1.3;
	font-size:16px; color:#171717; text-decoration:none;
}
.footbar li a:hover {
	color:#777777;
}
.footbar li.active a {
	color:#777777;
}
.footbar li:last-child {
    margin-right: 0px;
}

.copyright {
    margin:0; padding: 0px; font-size: 0.93em;
}

/* Active Mobile Display */
@media (max-width: 736px) {
    .padding-footer {
        padding: 30px 10px 30px 10px;
    }
    .footbar li {
        width: 100%; padding: 7px 7px 7px 7px;
        margin: 0px;
    }
    .copyright {
        padding: 0px 7px 0px 7px;
    }
}








/* Mobile Menu */
/* Icon Line */
.button-mobimenu-container {
    position:absolute; left:10px; top:50%;
    transform: translate(0%, -50%);
    width:44px; height:44px;
    cursor: pointer;
    z-index: 999;
}
/* Active Mobile Display */

.menu-icon {
    width: 30px; height:14px; position:absolute; left: 50%; top:50%; z-index:7;
    transform: translate(-50%, -50%);
}

.menu-icon span {
    display: block;
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	transform: rotate(0);
	transition: transform 0.1s ease;
	background: #282828;
}
.menu-icon span {
    background:#0800ff;
}
.menu-icon span.line-1 {
	top: 0;
}
.menu-icon span.line-2 {
	bottom: 0;
}

.menu-open .menu-icon span.line-1 {
    top:7px;
    transform: rotate(45deg);

}
.menu-open .menu-icon span.line-2 {
    top:7px;
    transform: rotate(-45deg);
}

/*Mobile Menu Container*/
.mobile-menu-content {
    position:fixed; top:0; bottom:0px; left:0; width:270px; min-height:100%; max-height: 100%; background:#ffffff; z-index:777;
    transform: translate3d(-270px, 0px, 0);
    transition: opacity 0.25s ease, transform 0.25s ease;
}
.openpanel.mobile-menu-content {
    transform: translate3d(0, 0, 0);
    transition: opacity 0.25s ease, transform 0.25s ease;
}

.mobile-menu-box {
    height: 100%; padding: 3.7em 0px 0px 0px;
}
.mobile-menu-lrtb {
    min-height: 100%; position:relative;
}
.mobile-menu-scroll {
    overflow-x: hidden;
    overflow-y: auto;
    position:absolute; top:0; left:0; width:270px; min-height:100%; max-height: 100%; z-index:7;
}
/*
.mobile-menu-scroll::-webkit-scrollbar {width: 7px;}
.mobile-menu-scroll::-webkit-scrollbar-thumb {background: #222222; border: 0px none #222222;}
.mobile-menu-scroll::-webkit-scrollbar-track {background: #ffffff; border: 0px none #ffffff;}
.mobile-menu-scroll::-webkit-scrollbar-corner {background: transparent;}

.mobile-menu-scroll {scrollbar-width: thin; scrollbar-color: #222222 #ffffff;}
*/

.mobile-menu-open {
    overflow-y: hidden;
}

ul.mobimenu {
	margin:0; padding:0px;
}
.mobimenu li {
    list-style-type:none; position:relative;
}
.mobimenu li a {
	width: 100%; display: block; padding:13px 17px;
	font-size:16px; color:#111111; text-decoration:none;
}
.mobimenu li a:hover {
	color:#1a73e8; background:#f7f7f7;
}
.mobimenu li.active a {
	color:#1a73e8; background:#f7f7f7;
}

ul.sub-menu {
    margin:0px; padding:0px;
}

/*Mobile Menu Reset*/
.bg-reset {
    display:none; width: 100%; height: 100%; visibility: visible;
	position:fixed; left:0px; right:0px; top:0px; bottom:0px; z-index:700;
    opacity: 0.7; background:#eeeeee;
}
.bg-reset.openpanel {
    display:block;
}


/*Icon*/
.phone-number-container {
    position:absolute; right:10px; top:50%;
    transform: translate(0%, -50%);
    line-height: 48px;
    color:#111111;
    z-index: 999;
}

.phone-number-container a {
    line-height: 13px; padding: 14px 57px 14px 14px;
    font-size: 1em; text-decoration: none; vertical-align: middle; color:#111111;
}
.phone-number-container a:hover {
    color:#1a73e8;
}
.phone-number-container:hover ~ .phone-icon-box {
    background:#eaeaea; border-radius: 50%;
}

@media (max-width: 768px) {
    .phone-number-container {
        display: none;
    }
}



.phone-icon-box {
    width:44px; height:44px;
    position:absolute; right:10px; top:50%;
    transform: translate(0%, -50%);
    z-index: 777;
}
.phone-icon-box a {
    position:absolute; left:0px; right:0px; top:0px; bottom:0px;
    width:44px; height:44px; padding: 10px;
    color: green;
    z-index: 7;
}
.phone-icon-box a:hover {
    background:#eaeaea; border-radius: 50%;
    color: green;
}
.phone-icon-box a:focus {
    background:#eaeaea; border-radius: 50%;
    color: green;
}

img {
    width:100%;
}




/*Main Container*/
.line {
	position: relative;
}
.line-container {
	position: relative; max-width: 1280px; margin:0 auto;
}
.line-container-maxlimited {
    position: relative; max-width: 1600px; margin:0 auto; line-height: 0;
}

.padding-container {
	padding: 30px 0px 30px 0px;
}
/* Style Template Block */
.white {
    background:white;
}
.blackgrey {
    background:#222222;
}
.bluegrey {
    background:#333333;
}


.container-banner {
    height: auto; line-height: 0px;
}
.container-banner img {
	width: 100%; margin:0 auto; max-height: 380px; object-fit: cover;
}


.line-container-text {
	position: relative;
}

.line-container-text video, audio {
    margin: 0 auto;
    margin-bottom: 10px;
    max-width: 100%;
}

.line-container-text p {
    padding: 0px 18px 0px 18px;
    max-width: 780px;
    margin: 0 auto;
    margin-bottom: 10px;
    font-size: 1.1em;
    color:#171717;
    text-align: left;
    font-weight: 400;
    line-height: 29px;
}


@media (max-width: 320px) {
    .line-container-text p {
        font-size: 0.97em;
    }
}